package com.xlh.dao.problem;


import com.xlh.dto.problem.ProblemDTO;
import com.xlh.dto.problem.UserProblemAndAnswerDTO;
import com.xlh.param.problem.ProblemParam;
import com.xlh.param.problem.ProblemPostParam;
import com.xlh.param.problem.ReplyPostParam;

import java.util.List;

/**
 * @author sy
 */
public interface ProblemMapperExt {

    List<ProblemDTO> listProblemPages(ProblemParam problemParam);

    ProblemDTO problemDetailById(Long id);

    List<ProblemDTO> listMyProblemReplyPages(ProblemParam problemParam);

    void askQuestions(ProblemPostParam problemPostParam);

    void batchDeletionQuestion(List<Integer> ids);

    void changeNumberAnswers(ReplyPostParam replyPostParam);

    /**
     * 根据课程和用户查询用户问题总数
     * @param courseId
     * @param userIds
     * @return
     */
    List<UserProblemAndAnswerDTO> findUserProblemCount(Long courseId, List<Long> userIds);

    /**
     * 查询学生回答问题总数根据课程ID
     * @param courseId
     * @param userIds
     * @return
     */
    List<UserProblemAndAnswerDTO> findUserAnswerCount(Long courseId, List<Long> userIds);

    
}
